iT邦幫忙

第 12 屆 iThome 鐵人賽

DAY 18
0
Modern Web

把前後分離製作的網站組起來系列 第 18

開始要把前後端接起來了

  • 分享至 

  • xImage
  •  

到product.service.ts
https://ithelp.ithome.com.tw/upload/images/20201109/20119035BMmFY8wNCq.png

開始寫入後端的url及其他的比較不習慣的是import居然是要用手刻
https://ithelp.ithome.com.tw/upload/images/20201109/20119035FevdElXNxv.png

把有"波浪"的地方import要用手刻
import { map } from 'rxjs/operators';
有的code要注意前面有"空格"
https://ithelp.ithome.com.tw/upload/images/20201109/20119035KLWJzlblUk.png

import { HttpClient } from '@angular/common/http';
import { Injectable } from '@angular/core';
import { Observable } from 'rxjs';
import { map } from 'rxjs/operators';
@Injectable({
  providedIn: 'root'
})
export class ProductService {

  private baseUrl = 'http://localhost:8080/api/products';

  constructor(private httpClient: HttpClient) { }

  getProductList(): Observable<Product[]>{
    return this.httpClient.get<GetResponse>(this.baseUrl).pipe(
      map(response => response._embedded.Products)
    );
  }
}

interface GetResponse{
  _embedded;
   products: Product[];
}


開始寫入前端的url
到product-list.component.ts
https://ithelp.ithome.com.tw/upload/images/20201109/201190352Qg8SbHcHr.png

這裡有點怪~我先貼上再回頭來debug
https://ithelp.ithome.com.tw/upload/images/20201109/20119035g75g9VOLrf.png


到product-list.component.html

https://ithelp.ithome.com.tw/upload/images/20201109/20119035TZRM7haOBq.png


到後端的spring boot加入寫入前端的url後再回到VScode 在cmd打上 ng serve --open(在angular-eccommerce裡面)
https://ithelp.ithome.com.tw/upload/images/20201110/201190355QT092qmi5.png
寫入前端的url
@CrossOrigin("http://localhost:4200")
https://ithelp.ithome.com.tw/upload/images/20201110/20119035Rt5jPOOklE.png

在dao的兩個檔案都要加入@CrossOrigin("http://localhost:4200")
https://ithelp.ithome.com.tw/upload/images/20201110/20119035UvRGbUeybU.png

按SpringBootEcommerceApplication看看spring boot 會不會動
結果卡在8080連不上~QQ因為有人在用

解決方法:我是windows10
就是打開cmd
然後打上netstat -ano|findstr 8080
看看是被誰listening
到工作管理員->看服務->同樣編號的停止

目前卡在前後端連起來有點卡住
https://ithelp.ithome.com.tw/upload/images/20201110/20119035ZpqfSii1IK.png

來debug.......https://stackoverflow.com/questions/35721206/how-to-enable-production-mode

後來解決方法有~
1.在spring 裡裝lombok
https://ithelp.ithome.com.tw/upload/images/20201111/20119035sv2hF8fue0.png

2.檢查spring的mysql連線
3.最後是在vscode的service發現code裝反
https://ithelp.ithome.com.tw/upload/images/20201111/20119035zixbKEnmzX.png

昨晚本來想好好的補坑/images/emoticon/emoticon16.gif

但是真的是太愛睏了/images/emoticon/emoticon10.gif

這篇原來是預計寫顧客資料的填寫~

其實本來想用登入購買有帳號密碼

但是想想"鐵粉"真的有這麼多嗎?/images/emoticon/emoticon10.gif

感覺現實生活中都是買一買下次再連絡~

/images/emoticon/emoticon06.gif

到是付款方式比較麻煩~因為怕錢領不到

客人怕拿不到貨
/images/emoticon/emoticon09.gif

我晚上真的要來寫了/images/emoticon/emoticon10.gif

DEAR ALL 我們明天見/images/emoticon/emoticon25.gif


上一篇
接續第11篇的ANGULAR
下一篇
一個購物網站首頁的html編寫原則
系列文
把前後分離製作的網站組起來30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言